package com.wave.blog.serve.enums;

import com.mybatisflex.annotation.EnumValue;
import lombok.Getter;

/**
 * 用户角色枚举
 *
 * @author wave
 */
@Getter
public enum UserRoleEnum {
    /**
     * 普通用户
     */
    NORMAL(0, "普通用户"),
    
    /**
     * 管理员
     */
    ADMIN(1, "管理员");
    
    @EnumValue
    private final Integer code;
    
    private final String desc;
    
    UserRoleEnum(Integer code, String desc) {
        this.code = code;
        this.desc = desc;
    }
    
    /**
     * 根据code获取枚举
     *
     * @param code 状态码
     * @return 枚举对象
     */
    public static UserRoleEnum getByCode(Integer code) {
        for (UserRoleEnum role : values()) {
            if (role.code.equals(code)) {
                return role;
            }
        }
        return null;
    }
}